#include "widget.h"
#include "ui_widget.h"
#include <QDebug>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}

// 检测文本内容变化
void Widget::on_textEdit_textChanged()
{
    qDebug() << "textChanged(): " << ui->textEdit->toPlainText(); // 同理可以用tohtml; toMarkDown 获取不同形式的文本
}

// 选择的文本内容的变化
void Widget::on_textEdit_selectionChanged()
{
    QTextCursor cursor = ui->textEdit->textCursor(); // 获取文本光标对象
    qDebug() << "selectionChanged: " << cursor.selectedText(); // 输出光标选中内容
}

// 光标位置的变化
void Widget::on_textEdit_cursorPositionChanged()
{
    QTextCursor cursor = ui->textEdit->textCursor();
    qDebug() << "cursorPositionChanged: " << cursor.position(); // 实时输出光标位置
}

// 检测撤销操作
void Widget::on_textEdit_undoAvailable(bool b)
{
    qDebug() << "undoAvailable: " << b;
}

// 检测覆写操作
void Widget::on_textEdit_redoAvailable(bool b)
{
    qDebug() << "redoAvailable: " << b;
}

// 检测复制操作
void Widget::on_textEdit_copyAvailable(bool b)
{
    qDebug() << "copyAvailable: " << b;
}
